var o=new Object();
o.prop="exists";

function changO(){
    o.newprop=o.prop;
    delete o.prop;
}

console.log(o.hasOwnProperty('prop'));
// changO();

// console.log(o.hasOwnProperty('prop'))

// JavaScript 并没有保护 hasOwnProperty 属性名，因此，可能存在于一个包含此属性名的对象
console.log(Object.prototype.hasOwnProperty.call(o,'prop'))